package cn.dduan.fool.data.type.base.Integer;

/**
 * Byte
 * <p>
 * 注意：
 * 1. 位数：8位（bit）的存储空间
 * 2. 取值范围：-128 到 127（即 -2^7 到 2^7 - 1）（超出范围会抛出编译错误）
 * 3. 如果在类中定义一个 byte 类型的变量但未显式初始化，其默认值为 0
 * <p>
 * 应用场景：
 * 1. 节省内存空间，当处理大量数据且这些数据的值范围在 byte 类型的取值范围内时，使用 byte 类型可以显著节省内存
 * 2. 网络编程，在网络通信中，数据是以字节流的形式进行传输的，byte 类型可以很好地处理这些字节数据
 * 3. 文件读写，在文件操作中，文件内容以字节的形式存储，使用 byte 类型可以方便地进行文件的读写操作
 * 4. 编码处理，在处理字符编码时，如 UTF - 8、ISO - 8859 - 1 等，字符会被转换为字节序列，byte 类型可用于存储和操作这些字节序列
 * 5. 图像处理，在图像处理中，图像的像素数据可以用 byte 数组表示。例如，在处理灰度图像时，每个像素的灰度值可以用一个 byte 来表示
 * 6. 数据库操作，在数据库操作中，某些字段可能存储的是二进制数据，如图片、文件等。在 Java 中与数据库交互时，会使用 byte 数组来处理这些二进制数据
 *
 * @author dduan
 * @version 1.0
 * @date 2025/2/25
 */
public class MyByte {
    public static void main(String[] args) {
        byte a = 20;
        // 声明时必须赋值，否则抛出：可能尚未初始化变量b
        byte b;
        // 编译错误，值超出了 byte 类型的取值范围
        // byte c = 128;
        System.out.println("a = " + a); // a = 20
        // System.out.println("b = " + b); // b = 0
        // System.out.println("c = " + c); // c = 编译错误
    }
}
